#include <reg51.h>
#include "uart.h"

// 波特率计算：12MHz时钟，4800波特率，SMOD=1
void UART_Init(void) {
    SCON = 0x50;        // 模式1，允许接收
    PCON |= 0x80;       // SMOD=1 波特率倍增
    TMOD |= 0x20;       // 定时器1模式2
    TH1 = 0xF3;         // 波特率4800
    TL1 = 0xF3;
    TR1 = 1;            // 启动定时器1
    ET1 = 0;            // 禁止定时器1中断
}

void UART_SendChar(unsigned char dat) {
    SBUF = dat;
    while(!TI);
    TI = 0;
}

void UART_SendString(char *s) {
    while(*s) {
        UART_SendChar(*s++);
    }
}
